package com.itheima.api;

public class StringTest {
    // String 学习
    public static void main(String[] args) {
        /**
         * String()
         *           初始化一个新创建的 String 对象，使其表示一个空字符序列。
         * String(byte[] bytes)
         *           通过使用平台的默认字符集解码指定的 byte 数组，构造一个新的 String。
         * String(byte[] bytes, Charset charset)
         *           通过使用指定的 charset 解码指定的 byte 数组，构造一个新的 String。
         * String(byte[] ascii, int hibyte)
         *           已过时。 该方法无法将字节正确地转换为字符。从 JDK 1.1 开始，完成该转换的首选方法是使用带有 Charset、字符集名称，或使用平台默认字符集的 String 构造方法。
         * String(byte[] bytes, int offset, int length)
         *           通过使用平台的默认字符集解码指定的 byte 子数组，构造一个新的 String。
         * String(byte[] bytes, int offset, int length, Charset charset)
         *           通过使用指定的 charset 解码指定的 byte 子数组，构造一个新的 String。
         * String(byte[] ascii, int hibyte, int offset, int count)
         *           已过时。 该方法无法将字节正确地转换为字符。从 JDK 1.1 开始，完成该转换的首选方法是使用带有 Charset、字符集名称，或使用平台默认字符集的 String 构造方法。
         * String(byte[] bytes, int offset, int length, String charsetName)
         *           通过使用指定的字符集解码指定的 byte 子数组，构造一个新的 String。
         * String(byte[] bytes, String charsetName)
         *           通过使用指定的 charset 解码指定的 byte 数组，构造一个新的 String。
         * String(char[] value)
         *           分配一个新的 String，使其表示字符数组参数中当前包含的字符序列。
         * String(char[] value, int offset, int count)
         *           分配一个新的 String，它包含取自字符数组参数一个子数组的字符。
         * String(int[] codePoints, int offset, int count)
         *           分配一个新的 String，它包含 Unicode 代码点数组参数一个子数组的字符。
         * String(String original)
         *           初始化一个新创建的 String 对象，使其表示一个与参数相同的字符序列；换句话说，新创建的字符串是该参数字符串的副本。
         * String(StringBuffer buffer)
         *           分配一个新的字符串，它包含字符串缓冲区参数中当前包含的字符序列。
         * String(StringBuilder builder)
         *           分配一个新的字符串，它包含字符串生成器参数中当前包含的字符序列。
         */
        demo1();
    }


    public static void demo1() {
        String string = "helloworld liangbo梁博";
        System.out.println(string.charAt(1));
        System.out.println(string.codePointAt(13));
        System.out.println(string.compareTo("helloworld liangbo梁博")); // 0 相同 -1 小  1 大
        System.out.println(string.concat("shenlll"));
        System.out.println(string.contains("梁博"));
        System.out.println(string.contains(" "));
        System.out.println(string.contentEquals("helloworld liangbo梁博"));
        System.out.println(string.endsWith("博"));
        System.out.println(string.equals("梁博"));
        System.out.println(string.getBytes());
        System.out.println(string.indexOf('a'));
        System.out.println(string.isEmpty());
        System.out.println(string.lastIndexOf("o"));
        System.out.println(string.length());
        System.out.println(string.replace("l", "p"));
    }
}
